package com.iris.live.services.data.models;

import javax.persistence.*;
import java.sql.Timestamp;

/**
 * Created by DF on 9/23/2016.
 */
@Entity
@Table(name = "报价付款详细", schema = "sg_lsh", catalog = "")
@IdClass(报价付款详细ModelPK.class)
public class 报价付款详细Model {
    private int 报价编号;
    private String 付款事由;
    private String 应付金额;
    private String 实付金额;
    private String 附加参数;
    private String 更新账号;
    private Timestamp 更新时间;
    private String 财务备注;

    @Id
    @Column(name = "报价编号")
    public int get报价编号() {
        return 报价编号;
    }

    public void set报价编号(int 报价编号) {
        this.报价编号 = 报价编号;
    }

    @Id
    @Column(name = "付款事由")
    public String get付款事由() {
        return 付款事由;
    }

    public void set付款事由(String 付款事由) {
        this.付款事由 = 付款事由;
    }

    @Basic
    @Column(name = "应付金额")
    public String get应付金额() {
        return 应付金额;
    }

    public void set应付金额(String 应付金额) {
        this.应付金额 = 应付金额;
    }

    @Basic
    @Column(name = "实付金额")
    public String get实付金额() {
        return 实付金额;
    }

    public void set实付金额(String 实付金额) {
        this.实付金额 = 实付金额;
    }

    @Basic
    @Column(name = "附加参数")
    public String get附加参数() {
        return 附加参数;
    }

    public void set附加参数(String 附加参数) {
        this.附加参数 = 附加参数;
    }

    @Basic
    @Column(name = "更新账号")
    public String get更新账号() {
        return 更新账号;
    }

    public void set更新账号(String 更新账号) {
        this.更新账号 = 更新账号;
    }

    @Basic
    @Column(name = "更新时间")
    public Timestamp get更新时间() {
        return 更新时间;
    }

    public void set更新时间(Timestamp 更新时间) {
        this.更新时间 = 更新时间;
    }

    @Basic
    @Column(name = "财务备注")
    public String get财务备注() {
        return 财务备注;
    }

    public void set财务备注(String 财务备注) {
        this.财务备注 = 财务备注;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        报价付款详细Model that = (报价付款详细Model) o;

        if (报价编号 != that.报价编号) return false;
        if (付款事由 != null ? !付款事由.equals(that.付款事由) : that.付款事由 != null) return false;
        if (应付金额 != null ? !应付金额.equals(that.应付金额) : that.应付金额 != null) return false;
        if (实付金额 != null ? !实付金额.equals(that.实付金额) : that.实付金额 != null) return false;
        if (附加参数 != null ? !附加参数.equals(that.附加参数) : that.附加参数 != null) return false;
        if (更新账号 != null ? !更新账号.equals(that.更新账号) : that.更新账号 != null) return false;
        if (更新时间 != null ? !更新时间.equals(that.更新时间) : that.更新时间 != null) return false;
        if (财务备注 != null ? !财务备注.equals(that.财务备注) : that.财务备注 != null) return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = 报价编号;
        result = 31 * result + (付款事由 != null ? 付款事由.hashCode() : 0);
        result = 31 * result + (应付金额 != null ? 应付金额.hashCode() : 0);
        result = 31 * result + (实付金额 != null ? 实付金额.hashCode() : 0);
        result = 31 * result + (附加参数 != null ? 附加参数.hashCode() : 0);
        result = 31 * result + (更新账号 != null ? 更新账号.hashCode() : 0);
        result = 31 * result + (更新时间 != null ? 更新时间.hashCode() : 0);
        result = 31 * result + (财务备注 != null ? 财务备注.hashCode() : 0);
        return result;
    }
}
